using MediatR;
using RBAC.ErrorCode;

namespace RBAC.Read.Api.Application.Command.ProcessManagements
{
    /// <summary>
    /// 导出工序列表到 Excel（读端）
    /// 过滤条件与分页查询保持一致，但不分页。
    /// </summary>
    public class ExportProcessesCommand : IRequest<APIResult<byte[]>>
    {
        /// <summary>
        /// 关键字（匹配 工序编码/工序名称）
        /// </summary>
        public string? Keyword { get; set; }
        /// <summary>
        /// 分类Id 过滤
        /// </summary>
        public long? ClassificationId { get; set; }
        /// <summary>
        /// 部门Id 过滤
        /// </summary>
        public long? DepartmentId { get; set; }
        /// <summary>
        /// 状态过滤（1启用/0禁用）
        /// </summary>
        public int? Status { get; set; }
        /// <summary>
        /// 排序字段（默认按 Id DESC）
        /// </summary>
        public string OrderBy { get; set; } = "pi.Id DESC";
    }
}
